package com.xxx.auth.common.util;

import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import java.util.Base64;
import java.util.UUID;

public class ApplicationGeneratorUtil {

    public static String generateAppSecret() {
        try {
            // 使用 SHA1PRNG 算法生成随机数
            SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG");
            // 使用24字节来生成32字符的Base64字符串
            byte[] secretBytes = new byte[24];
            secureRandom.nextBytes(secretBytes);

            // 将随机字节转换为Base64字符串
            String base64Secret = Base64.getUrlEncoder().withoutPadding().encodeToString(secretBytes);

            // 截取前32个字符
            return base64Secret.substring(0, 32);
        } catch (NoSuchAlgorithmException e) {
            throw new RuntimeException("无法生成 App Secret", e);
        }
    }

}
